export type ColSizeObject = {
    span?: number
    offset?: number
    pull?: number
    push?: number
}

export type ColSize = number | ColSizeObject

export interface colProps {
    /**
     * @description custom element tag
     */
    tag?: string,
    /**
     * @description number of column the grid spans
     */
    span?: number,
    /**
     * @description number of spacing on the left side of the grid
     */
    offset?: number,
    /**
     * @description number of columns that grid moves to the left
     */
    pull?: number,
    /**
     * @description number of columns that grid moves to the right
     */
    push?: number,
    /**
     * @description `<768px` Responsive columns or column props object
     */
    xs?: [number, object],
    /**
     * @description `≥768px` Responsive columns or column props object
     */
    sm?: [number, object],
    /**
     * @description `≥992px` Responsive columns or column props object
     */
    md?: [number, object],
    /**
     * @description `≥1200px` Responsive columns or column props object
     */
    lg?: [number, object],
    /**
     * @description `≥1920px` Responsive columns or column props object
     */
    xl?: [number, object],
}

// export type ColProps = ExtractPropTypes<typeof colProps>
// export type ColInstance = InstanceType<typeof Col>